package com.dd.web.base.service;


import com.dd.web.base.entity.common.CommonPage;
import com.dd.web.base.entity.data.UmsMenu;
import org.apache.ibatis.annotations.Param;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

public interface UmsMenuService {
    int create(UmsMenu menu);

    int update(Long id, UmsMenu menu);

    UmsMenu getItem(Long id);

    int delete(Long id);

//    List<UmsResource> list(Long categoryId, String nameKeyword, String urlKeyword, Integer pageSize, Integer pageNum);
//
    List<UmsMenu> listAll();

    /**
     * 查询一页菜单列表
     * @param pageNum 当前页码
     * @param pageSize 每页行数
     * @param menu 查询条件
     * @return
     */
    CommonPage queryUmsMenuForPage(int pageNum, int pageSize,UmsMenu menu);

    /**
     *根据parentId查询子集菜单
     * @param parentId 父级菜单id 为空则默认查询0级菜单
     * @return
     */
    List<UmsMenu> queryMenuByParentId(Long parentId);

    /**
     * 根据parentId查询子集菜单数量
     * @param parentId 父级菜单id 为空则默认查询0级菜单
     * @return
     */
    int queryUmsMenuCountByParentId(@Param("parentId") Long parentId);
}
